package com.lostreseditores.sabersai.model.control;

import java.util.List;

import com.lostreseditores.sabersai.model.Asignatura;
import com.lostreseditores.sabersai.model.dto.AsignaturaDTO;


public interface IAsignaturaLogic {
    public List<Asignatura> getAsignatura() throws Exception;

    public void saveAsignatura(String asigdescripv, Long asigdesvnacional,
        Long asigdesvnacsaber, Integer asigidn, Long asigpromnacional,
        Long asigpromnacsaber, Integer asigxexamordfn, Integer asigxexamordn2n,
        Integer asigxexamordnn, Integer asigxexamordsn,
        Integer clasasigidn_Claseasignatura) throws Exception;

    public void deleteAsignatura(Integer asigidn) throws Exception;

    public void updateAsignatura(String asigdescripv, Long asigdesvnacional,
        Long asigdesvnacsaber, Integer asigidn, Long asigpromnacional,
        Long asigpromnacsaber, Integer asigxexamordfn, Integer asigxexamordn2n,
        Integer asigxexamordnn, Integer asigxexamordsn,
        Integer clasasigidn_Claseasignatura) throws Exception;

    public Asignatura getAsignatura(Integer asigidn) throws Exception;

    public List<Asignatura> findByCriteria(Object[] variables,
        Object[] variablesBetween, Object[] variablesBetweenDates)
        throws Exception;

    public List<Asignatura> findPageAsignatura(String sortColumnName,
        boolean sortAscending, int startRow, int maxResults)
        throws Exception;

    public Long findTotalNumberAsignatura() throws Exception;

    public List<AsignaturaDTO> getDataAsignatura() throws Exception;
}
